package com.macrounion.atv.service.entity;

import cn.hutool.core.annotation.Alias;
import com.macrounion.base.service.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * 协议库protocol
 * @author Administrator 2020-11-05
 */
@Data
@ApiModel(value = "协议库", description = "协议库")
public class Protocol extends BaseEntity implements Serializable {
    /**
     * 协议名,mib名
     */
    @Alias("protocol_name")
    @ApiModelProperty(value = "协议名,mib名")
    private String name;

    /**
     * 所属网关，捷宸设备id
     */
    @ApiModelProperty(value = "所属网关，捷宸设备id")
    private String netId;

    /**
     * snmp协议版本
     */
    @Alias("protocol_snmpv")
    @ApiModelProperty(value = "snmp协议版本")
    private Integer snmpv;

    /**
     * 协议类型，snmp/捷宸等
     */
    @Alias("protocol_stype")
    @ApiModelProperty(value = "协议类型，snmp/捷宸等")
    private String stype;

    /**
     * 备注
     */
    @Alias("protocol_remark")
    @ApiModelProperty(value = "备注")
    private String remark;

    /**
     * protocol
     */
    private static final long serialVersionUID = 1L;

    /**
     * 协议名,mib名
     * @return 协议名,mib名
     */
    public String getName() {
        return name;
    }

    /**
     *
     * @mbg.generated
     */
    public Protocol withName(String name) {
        this.setName(name);
        return this;
    }

    /**
     * 协议名,mib名
     * @param name 协议名,mib名
     */
    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    /**
     * 所属网关，捷宸设备id
     * @return 所属网关，捷宸设备id
     */
    public String getNetId() {
        return netId;
    }

    /**
     *
     * @mbg.generated
     */
    public Protocol withNetId(String netId) {
        this.setNetId(netId);
        return this;
    }

    /**
     * 所属网关，捷宸设备id
     * @param netId 所属网关，捷宸设备id
     */
    public void setNetId(String netId) {
        this.netId = netId == null ? null : netId.trim();
    }

    /**
     * snmp协议版本
     * @return snmp协议版本
     */
    public Integer getSnmpv() {
        return snmpv;
    }

    /**
     *
     * @mbg.generated
     */
    public Protocol withSnmpv(Integer snmpv) {
        this.setSnmpv(snmpv);
        return this;
    }

    /**
     * snmp协议版本
     * @param snmpv snmp协议版本
     */
    public void setSnmpv(Integer snmpv) {
        this.snmpv = snmpv;
    }

    /**
     * 协议类型，snmp/捷宸等
     * @return 协议类型，snmp/捷宸等
     */
    public String getStype() {
        return stype;
    }

    /**
     *
     * @mbg.generated
     */
    public Protocol withStype(String stype) {
        this.setStype(stype);
        return this;
    }

    /**
     * 协议类型，snmp/捷宸等
     * @param stype 协议类型，snmp/捷宸等
     */
    public void setStype(String stype) {
        this.stype = stype == null ? null : stype.trim();
    }

    /**
     * 备注
     * @return 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     *
     * @mbg.generated
     */
    public Protocol withRemark(String remark) {
        this.setRemark(remark);
        return this;
    }

    /**
     * 备注
     * @param remark 备注
     */
    public void setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
    }

    /**
     *
     * @mbg.generated
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", name=").append(name);
        sb.append(", netId=").append(netId);
        sb.append(", snmpv=").append(snmpv);
        sb.append(", stype=").append(stype);
        sb.append(", remark=").append(remark);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}